package com.my.bbs.dao;

import com.my.bbs.entity.MyPost;
import com.my.bbs.entity.MyUser;
import com.my.bbs.util.PageQueryUtil;
import org.apache.ibatis.annotations.Param;

import javax.xml.crypto.Data;
import java.util.List;

/**
 * @author 86187
 */
public interface MyPostMapper {
    int deleteByPrimaryKey(Long postId);

    int insert(MyPost record);

    int insertSelective(MyPost record);

    MyPost selectByPrimaryKey(Long postId);

    List<MyPost> selectByPrimaryKeys(@Param("postIds")List<Long> postIds);

    int updateByPrimaryKeySelective(MyPost record);

    int updateByPrimaryKeyWithBLOBs(MyPost record);

    int updateByPrimaryKey(MyPost record);

    int getTotalPosts(PageQueryUtil pageUtil);

    List<MyPost> findPostList(PageQueryUtil pageUtil);

    List<MyPost> getHotTopicPostList();

    List<MyPost> getMyPostList(@Param("userId") Long userId, @Param("period") String period);

    /**
     * 用户被封，同步封帖子
     * @param userId
     * @return
     */
    int bannedPostByUserId(Long userId);

    /**
     * 用户解封，解封帖子
     * @param userId
     * @return
     */
    int unBannedPostByUserId(Long userId);

    /**
     * 获取当前页面被封的帖子
     * @param pageQueryUtil
     * @return
     */
    List<MyPost> getPageBannedPost(PageQueryUtil pageQueryUtil);

    /**
     * 获取所有被封帖子总数
     * @return
     */
    int getTotalBannedPostCount(PageQueryUtil pageQueryUtil);

}